約 4,615,844 件
https://w.atwiki.jp/mugencns/pages/105.html
戻る→トリガー情報の一覧 ■Command【コマンド認識】 ▼概要 File-/CMDファイルで指定したCommandに適合しているかどうかを確認。 全てのコマンド入力を認識するための記述。 Commandの中身や細かい技術についてはFile-/CMDファイルのページを参照。 ▼情報・書式 Command = "文字列" ;""を確認する条件式、bool型 指定したCommandの入力が成立しているなら1を、それ以外で0を返す。 入力後、成立状態はbuffer.timeの分持続する。 「=」を「!=」にすると入力がないことを確認できる。文字列型としては珍しく不等号式が使える。 文字列のCommandが存在しない場合エラーで落ちる※なお"文字列"部分は大文字小文字の区別を行う。 誤って存在しない大文字小文字の組み合わせを使用するとエラーで落ちる。 ■Lv1-記述例・補足・注意点 記述例 [State -1, p] Type = ChangeState TriggerAll = Statetype != A TriggerAll = Command = "x" Trigger1 = Ctrl Trigger2 = MoveContact StateNo = 200 Value = 200 代表的な弱パンチ用の記述。 補足 なおSC-/Helperでは設定のKeyCtrlを1にしなければ認識しない。 T-/RoundState =3、戦闘終了後はCommandを認識しない。 攻撃によるHitPause中にCommandが成立していた場合HitPause最中ずっと1+本来のbuffer.Time計測は経過しない。 HitPauseが終わった次のフレームからbuffer.Time分らしい? SC-/Pause,SC-/SuperPauseによる停止中のCommandは通常と同じ。受付は制限されないが、特殊な持続もない、とのこと MUGEN側のAI補足 MUGEN側のAIはランダムにCommandを成立させる。MUGEN側のAIでも一応基本コマンドとそれによるCommand判定が行われている。 基本コマンドは単一の方向キー・ボタンキーのこと KeyCtrl=1設定のSC-/HelperのMUGEN側のAI入力は、Helperと本体で別々の基本コマンドの入力を行う。 基本コマンド以外のコマンドは本体と同期している。 同じ本体を持つHelper同士の基本コマンド自体は全て同一のはず。。 注意点 攻撃によるPauseTime(ヒットポーズ)中はCommandの持続する。そのため屈み攻撃→立ち攻撃などの連携がしずらくなる。 ヒットまでに放さないとCommand="holddown"がPauseTime中持続してしまい、キー自体を放しても内部的に↓入れ攻撃と判定されてしまう。 対処法についてはFile-/CMDファイルのページを参照。 ステート奪取されている場合、認識するCommandが変化する。そのため、不可能なコマンドですら成立することがある。内容的には適応された相手側のn個目のコマンドに対応する自分側のn個目のコマンドが入力状態になる らしい。 例:自分側3個目に昇龍、相手側3番目に波動の場合ステートを奪われている最中に波動を入力で、昇龍を認識してしまう。 ただ「recovery」は例外的に自分側の通りみたい? なおリダイレクトで相手のCommandを参照する場合も自分側のn個目のコマンドを記述している場合、相手のn個目にあるコマンド入力に対して反応する。同キャラなら同じコマンド。自身のSC-/Helperなら問題ない。 上記の理由により、-2ステートにCommandを配置してはならない。同様理由でHelperからRoot,リダイレクトでのCommandを認識もしてはいけない。 また奪ったステートをHitPause最中に返すことも危ない。 あとbuffer.timeは奪った側の基準とのことでbuffertimeを2以上にすると暴発する危険がハネ上がる。 Enemy,Command="holddown"なども不可。 仕組みについての考察は後述。 File-/CMDファイルのページも参照 なおトリガー情報としては処理がやや重め。1フレームに数万回レベルで読み込みを行うと処理落ちが発生する。 AI制作時の注意点 AI用にはAI起動時に不可能Command認識でのAI起動をする程度。起動後はCommandを基本的に無視する。 ステートを奪われている状態で特定のCommandを要求されても対応できない。Recoverに限り、AI専用の仕様にすることで確実な最速反応も可能だが。 その場合、止めること・ディレイすることは不可能。 +■ステート奪取・リダイレクトに対応しないCommand処理の推測 Command処理の推測 コマンド成立情報は基本File-/CMDファイルの記述順でコマンド成立状態のフラグを保存している。 つまりそれは基本「××のコマンドが成立しているかどうか」ではなく、 「n番目のコマンドが成立しているかどうか」でフラグ管理されているということ。 そして情報のCommandでは対応するn番目のコマンド情報が成立しているかどうかを確認する。 例えば10番目に"hadou_a"というコマンドの定義が記述されている場合、 そのキャラのCommand="hadou_a"で10番目の情報を確認する処理を行い、 10番目のコマンド定義(この場合"hadou_a")が成立すると10番目の成立フラグが立つわけである。 リダイレクトで対応するn番目のコマンドを認識するのはそういう理由。 ステート奪取をされた場合、コマンド定義自体がほぼ全て相手側の定義に差し替わるため、 単純に対応するn番目の情報を確認するCommand条件が暴発してしまうわけである。 なので-2ステートにCommand条件を置いたり、 SC-/HelperからリダイレクトでCommandを参照したりしないこと。 例外のrecovery Command="recovery"(空中受身用コマンド)だけは 例外として定義の記述順に関わらずrecoveryのコマンドで認識を行う上、 恐らく常にキャラ側の定義で処理を行うみたい。多分。 他の必須コマンドは確かめていないが、aやholddownは対応していない模様。
https://w.atwiki.jp/study-java/pages/14.html
java
https://w.atwiki.jp/hanaoka/pages/13.html
command パスワードの変更 $ passwd Changing password for ユーザー名 (current) UNIX password (現在のパスワードを入力) New UNIX password (新しいパスワードを入力) Retype new UNIX password (新しいパスワードを再入力) passwd all authentication tokens updated successfully $ ファイルの検索 $ find -mtime 0 ←今日更新したファイルを検索 ファイルのコピー dev6→dev8へフォルダのコピー scp -r /tmp/folder_name postgres@192.168.0.*** /tmp/folder_name dev8→dev6へファイルのコピー(dev6から取りに行く形) scp postgres@192.168.0.*** /home/postgres/file_name file_name Grep Ex.sample.dat の中の「hoge」という文字列を含む行を表示したい $ grep hoge sample.dat Ex.usrディレクトリ以下のすべてのファイル、ディレクトリから「hoge」という文字列を含む行を表示したい $ grep -R hoge /home/vhr/apps/me/webapps/me/usr/* シンボリックリンク Ex.file-aへのリンクをfile-bという名前で作る $ ln -s /home/user/local/file-a file-b ※-sオプションを忘れずに! シャットダウン操作 /sbin/shutdown [ オプション ] 時刻 [ ユーザへのメッセージ ] 主なオプション オプション 意味 -t 秒 警告シグナルを送り,指定した秒数だけ待った後にkillシグナルを送る。 -k ログイン中のユーザにメッセージを送るだけで,実際にはシャットダウンしない。 -r シャットダウン後,リブートする。 -f シャットダウン後,リブートする。リブート時にfsckでファイルの検査を行わないので,その分リブートが速い。 -h シャットダウン後,システムを停止する。 時刻 シャットダウンする時刻。指定方法は次のとおり。 now すぐにシャットダウン動作に入る hh mm 指定した時刻にシャットダウン動作に入る +m m分後にシャットダウン動作に入る [toshim@gw2000 ~]$ su -- suコマンドでスーパーユーザになる Password -- rootのパスワードを入力(入力したものは表示されない) [root@gw2000 /home/toshim]# /sbin/shutdown -h now -- このコマンドでシャットダウンする ファイルの圧縮 tar cvfz 圧縮後のファイル名 圧縮したいファイル名 テキストモードとグラフィカルモードの切り替え rootで、「vi /etc/inittab」。[ i ]キーを押し、入力モードに切り替え、「id 5 initdefault 」の箇所を「id 3 initdefault 」に編集しなおします。「3」がテ キストモード、「5」がグラフィックモードになります。編集し終わったら、[Esc]キーを押してコマンドモードに切り替えておきます。保存するにはコマンドモードで[ wq ]を入力してください。 ランモードの確認 #runlevel N 3 ←現状のランモード topコマンド システム全体の情報を5秒おきに表示する。 # top
https://w.atwiki.jp/limixp/pages/19.html
Java開発環境のインストールが済んだらさっそくプログラムを書いてみます. 本当にインストールできているかの確認にもなります. Hello World!プログラム プログラムから画面上に「Hello World!」と表示させるプログラムをJavaで作ります. プログラムを書くためにテキストエディタを用意する必要があります。Windows標準のメモ帳(notepad.exe)でも構いません. オススメなテキストエディタはTeraPadやSakura Editorが挙げられます. 仕様は以下の通りとします. クラス名は HelloWorld . 「Hello World!」を標準出力に出力する greetWorld()メソッド. HelloWorldクラスのインスタンスを生成し,greetWorld()メソッドを呼び出すmain()メソッド. public class HelloWorld{ public HelloWorld(){ //コンストラクタ } public void greetWorld(){ System.out.println("Hello World!"); } public static void main(String[] args){ HelloWorld instance = new HelloWorld(); instance.greetWorld(); } } これをHelloWorld.javaというファイル名で保存します. 保存先はC ドライブの直下に java というディレクトリを作成し, C \java\に保存します. 保存後,このプログラムをコンパイル~実行は以下のようにします. コマンドプロンプトを起動します. HelloWorld.javaのファイルがあるディレクトリにcdコマンドで移動します.cd C \java\ HelloWorld.javaをjavacコマンドでコンパイルします.javac HelloWorld.java するとHelloWorld.classというバイトコード(クラスファイル)が生成されます.dirコマンドで確認できます. クラスファイルをjavaコマンドで実行します.java HelloWorld 「Hello World!」と表示された成功です. もしjavacコマンドでエラーが出た場合はソースに誤りがあります. エラーの内容からソースの内容を良く確認し,コンパイルしなおしてください. 以上で最初のJavaプログラムは終わりです. トップページ
https://w.atwiki.jp/javaapl/pages/13.html
オブジェクト指向プログラミング言語であり、Javaのプログラムの実行環境および開発環境をいう。 Javaを実行するために必要な物 ソースコード API(J2EE,J2SE等) コンパイラ Java VM (Java Virtual Machine) API あるプラットフォーム(OSやミドルウェア)向けのソフトウェアを開発する際に 使用できる命令や関数の集合のこと。また、それらを利用するためのプログラム上の手続きを定めた規約の集合。 ライブラリの仕様(くわしく説明してある物)のこと。 何かの機能のことも「API」という。 J2SE Javaを使うための最も基本的なAPI(関数)の塊 J2EE Web上でJavaを使うためのちょっと高級なAPI(関数)の塊です。 Java Virtual Machine java実行環境(JRE)のこと。Java仮想マシンのこと。 コンパイルされたソースコードを読み込み、実行するために必要な物。
https://w.atwiki.jp/java_pro/pages/19.html
import java.io.*; public class Find1 { public static void main(String[] args){ if (args.length != 1) {//コマンドラインで入力した引数が間違っている System.out.println("使用方:java Find1 検索文字列 検索対象ファイル"); System.out.println("例:java Find1 System Find1.java"); System.exit(0);//プログラムを終了する。 } String findstr = args[0];//コマンドラインで入力された検索文字列を取得 System.out.println("検索文字は「" + findstr + "」です"); BufferedReader r = new BufferedReader(new InputStreamReader(System.in));//BufferedReaderを用意 try { String line;//ファイルからの読み込み用変数line int linenum = 1;//行数をカウントのための変数 while ((line = r.readLine()) != null){//一行取得、EOFなら終了する。 int n = line.indexOf(findstr);//indexOfメソッドでfindstrを検索。 if (n = 0) {//検索文字列が見つかったか? System.out.println(linenum + " " + line);//行の番号とその行を表示 } linenum++;//次の行へカウントする。 } } catch (IOException e) { System.out.println(e); } } }
https://w.atwiki.jp/naobe/pages/25.html
言語に戻る EJB JavaEE5 MBean JMX JNDI サーブレット 言語仕様 項目 説明 transient 修飾子。Seriariseオブジェクトの保管しないフィールドを修飾する。 クラスローダ http //www.techscore.com/tech/Java/JavaEE/Servlet/supplement-1/ 参照 目的 同じ名前でバージョンの異なるクラスを使用するために使う。クラスローダが異なればバージョンが異なっても良い。自分自身のクラスローダを得るにはgetClassLoader()メソッドを用いる。 クラスローダには親子関係があり、子クラスローダがクラスをロードするときには、親クラスローダにロードを依頼してロードできなければ、子クラスローダがロードする。 Class#getClassLoader()は、このクラスをロードしたクラスローダを返す クラスローダによってロードされたClassはパーマネント領域に格納される。ClassLoaderがGCされるとGCから解放される。 VMのクラスローダ ブートストラップクラスローダ JAVA_HOME /lib下のJARファイルに含まれるクラスをロードする。JDK6は、 JAVA_HOME /jre/lib下? 親はいない 拡張クラスローダ JAVA_HOME /lib/ext下のJARファイルに含まれるクラスをロードする。JDK6は、 JAVA_HOME /jre/lib/ext下?親はいない システムクラスローダ CLASSPATHで指定した位置からクラスをロードする。親は拡張クラスローダ。ブートストラップクラスローダは親子関係なしでも委譲されるということでは? 通常のnew Foo()ではこのクラスローダが使われる。 ブートストラップクラスローダ、拡張クラスローダ、システムクラスローダの順番でクラスをロードする。 コンテキストクラスローダ(JDK6 API Threadより) コンテキスト ClassLoader は、クラスおよびリソースをロードするときに、このスレッドで実行中のコードが使用するためにスレッドの作成側によって提供されます。コンテキスト ClassLoader が設定されていない場合、デフォルトでは親 Thread の ClassLoader コンテキストになります。通常、親スレッドのコンテキスト ClassLoader は、アプリケーションのロードに使用されるクラスローダーに設定されます。 なので、設定しなければシステムクラスローダがコンテキストクラスローダになる。 コンテキスト・クラスローダを設定・取得するには、java.lang.Thread#setContextClassLoader,getContextClassLoaderメソッドを使う。 クラスローダ作成 JDK6 APIより たとえば、アプリケーションはネットワーククラスローダーを作成して、サーバーからクラスファイルをダウンロードできます。コードは次のようになります。 ClassLoader loader = new NetworkClassLoader(host, port); Object main = loader.loadClass("Main", true).newInstance(); . . . ネットワーククラスローダーのサブクラスは、ネットワークからクラスをロードするために findClass メソッドと loadClassData メソッドを定義しなければなりません。クラスを作成するバイトを一度ダウンロードしたら、defineClass メソッドを使ってクラスインスタンスを生成する必要があります。実装の例を次に示します。 class NetworkClassLoader extends ClassLoader { String host; int port; public Class findClass(String name) { byte[] b = loadClassData(name); return defineClass(name, b, 0, b.length); } private byte[] loadClassData(String name) { // load the class data from the connection . . . } } 特定のディレクトリからクラスをロードするクラスローダを作成してみる。 MyClassLoaderのmainメソッドで、test.MyClassLoaderTargetをロードしClassを作成する MyClassLoaderはClassLoaderを継承したクラスで、loadClassメソッドをオーバライドし、c /mydoc/tmp/を優先的にロードするディレクトリとしている。c /mydoc/tmp/にクラスがない場合は、ClassLoaderのloadClassメソッドを実行する ClassLoaderのloadClassメソッドでは、キャッシュにあれば、そのクラスを返す。なければ親クラスローダに移譲する。なければシステムクラスローダを使ってクラスをロードする Class#newInstance()を実行して、インスタンスを生成する MyClassLoaderTarget#execute()を実行し、MyClassLoaderTarget2をnewしてexecute()を実行する 実行結果を見ると、MyClassLoaderTarget2のクラスローダは、MyClassLoaderであることがわかる。つまりクラスローダを使ってロードしたクラスから別のクラスをnewするときはそのクラスローダを使うことがわかる。クラスローダを作成すると親クラスローダはシステムクラスローダになる。 コンテキストクラスローダは明示的に使用しない限り、使われることはなさそう。 package test; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; public class MyClassLoader extends ClassLoader { private static final int BUFSIZE = 1024; private byte[] result; private int last = 0; @Override public Class ? loadClass(String name) throws ClassNotFoundException { Class ? c = null; try { c = findClass(name); } catch (ClassNotFoundException e) { c = super.loadClass(name); } return c; } private void dbg(String string) { System.out.println(string); } @Override protected Class ? findClass(String name) throws ClassNotFoundException { try { byte[] b = loadClassData(name); return defineClass(name, b, 0, b.length); } catch (Exception e) { throw new ClassNotFoundException(e.getMessage(), e); } } private byte[] loadClassData(String name) throws IOException { result = new byte[0]; last = 0; FileInputStream ins = null; try { byte[] buf = new byte[BUFSIZE]; int readSize = 0; name = name.replace( . , / ); File classFile = new File("c /mydoc/tmp/" + name + ".class"); ins = new FileInputStream(classFile); while((readSize = ins.read(buf)) != -1 ) { moveToResult(readSize, buf); } return result; } finally { if(ins != null) { ins.close(); } } } private void moveToResult(int readSize, byte[] buf) { byte[] tmp = new byte[last + readSize]; // 結果バイト配列をtmp配列の先頭にコピー System.arraycopy(result, 0, tmp, 0, result.length); // bufをtmp配列にコピー System.arraycopy(buf, 0, tmp, last, readSize); result = tmp; last += readSize; } public static void main(String[] args) { try { MyClassLoader loader = new MyClassLoader(); System.out.println("parent " + loader.getParent().getClass().getName()); Class ? clazz = loader.loadClass("test.MyClassLoaderTarget"); System.out.println("target class loader name " + clazz.getClassLoader().getClass().getName()); ((Executor)clazz.newInstance()).execute(); } catch (Exception e) { e.printStackTrace(); } } } package test; public class MyClassLoaderTarget implements Executor { @Override public void execute() { System.out.println("AAA"); MyClassLoaderTarget2 target2 = new MyClassLoaderTarget2(); target2.execute(); System.out.println("target2 class loader name " + target2.getClass().getClassLoader().getClass().getName()); } public static void main(String[] args) { MyClassLoaderTarget target = new MyClassLoaderTarget(); target.execute(); } } package test; public class MyClassLoaderTarget2 implements Executor { @Override public void execute() { System.out.println("BBB"); } public static void main(String[] args) { MyClassLoaderTarget2 target = new MyClassLoaderTarget2(); target.execute(); } } package test; public interface Executor { public void execute(); } 実行結果 parent sun.misc.Launcher$AppClassLoader target class loader name test.MyClassLoader AAA BBB target2 class loader name test.MyClassLoader ThreadLocal スレッドに固有のオブジェクトを保管するために使う(Thread Singleton)。Servletの中で、使用例としてDBに対するConnectionをスレッド毎に保管する場合があげられる。この場合、引数にConnectionを作成すると全てのメソッドにConnectionの引数が必要になり手間がかかる。スレッドにプライベートフィールドを作成して保管できないときに使える。 JDBC 参照 タイプ 説明 備考 type2 ベンダのライブラリと共同して、DBと通信。ベンダのクライアントアプリが必要。 type4 直接DBと通信。JDBCドライバサイズが大きい バッチ insert, updateが連続して行われるときにネットワークトラフィックを削減するために使う。PreparedStatementオブジェクトに対して、addBatch(), executeBatch()メソッドを使うと複数のステートメントをまとめてDBサーバ送信する。 言語コード コード名 説明 Windows-31J ShiftJISの拡張。NEC特殊コードもサポート。 スレッドダンプ 稼働中のスレッドを標準出力にダンプする。 kill -3 プロセス番号 出力例 daemon以外のスレッドを見る。以下の例ではSNMP APIで停止している。 Full thread dump Java HotSpot(TM) Server VM (11.2-b01 mixed mode) "RMI Scheduler(0)" daemon prio=10 tid=0x0955e000 nid=0x15db waiting on condition [0x30cd1000..0x30cd1fa0] java.lang.Thread.State TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for 0x37f243d8 (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java 198) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java 1963) at java.util.concurrent.DelayQueue.take(DelayQueue.java 164) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java 583) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java 576) at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java 947) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java 907) at java.lang.Thread.run(Thread.java 619) "Thread-7" prio=10 tid=0x0954bc00 nid=0x15bf in Object.wait() [0x30eb7000..0x30eb7ea0] java.lang.Thread.State TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) - waiting on 0xa89ec300 (a com.adventnet.snmp.snmp2.SnmpCallback) at com.adventnet.snmp.snmp2.SnmpCallback.sleepUntilNotified(SnmpCallback.java 166) - locked 0xa89ec300 (a com.adventnet.snmp.snmp2.SnmpCallback) at com.adventnet.snmp.snmp2.SnmpCallback.run(SnmpCallback.java 152) アノテーション 注釈。プログラムに影響を与えない。プログラムから読める。コンパイラの動作に影響を与える。 @Override Overrideアノテーションを付加したメソッドがオーバライドメソッドでなければコンパイルエラーになる。 @SuppressWarning Xlintを指定したときに発生する警告メッセージを抑制する。 アプレット jarファイルを指定するには、ARCHIVEタグを使う。CLASSPATHはきかない。 セキュリティポリシー java.policyファイルの構文 grant signedBy "signer_names", codeBase "URL", principal principal_class_name "principal_name", principal principal_class_name "principal_name", ... { permission permission_class_name "target_name", "action",signedBy "signer_names"; permission permission_class_name "target_name", "action",signedBy "signer_names"; ... }; ここで、"signer_names"、"URL"、principal_class_name、"principal_name"、permission_class_name、"target_name"、"action"、"signer_names"は、変数。 signedBy 、codeBase、、principal は省略可能。 意味は、signer_namesで署名されたURLにあるプログラムが、permission_class_nameで規定されるtarget_nameに対して、actionすることを許可する。target_name, actionについては、permission_class_nameのAPIを参照。 http //java.sun.com/j2se/1.5.0/ja/docs/ja/guide/security/PolicyFiles.html 参照。 例 permission java.io.FilePermission "\\\\192.168.1.40\\-", "read,write"; 192.168.1.40のリモートファイルに対する読み書きを許可する。 Linux firefoxへのJava Plugin インストール 例 # ln -s /usr/java/jdk1.6.0_20/jre/lib/i386/libnpjp2.so /opt/firefox/plugins インストールの確認 urlにabout pluginsを設定して開く Linuxでのplugin コントロールパネル 起動 $JAVA_HOME/bin/ControlPanel を実行 最大メモリ容量の修正 "-XX MaxPermSize=256m"をJavaタブのアプレットパラメータに追加 その他 スタックトレースをStringに変換する 仕事の都合で、最後の行で改行を削除してタブをスペースに変換している。 private String getStackTraceAsString(Exception e) { ByteArrayOutputStream ostream = new ByteArrayOutputStream(100); e.printStackTrace(new PrintStream(ostream)); String sep = System.getProperty("line.separator"); return ostream.toString().replaceAll(sep, "").replace("\t", " "); } 固定長レコードのファイルを出力 package test; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.UnsupportedEncodingException; public class SingleFille { private BufferedOutputStream bstream; /** * ファイルに書き込むデータ * 桁数 * 内容 */ private String[][] data = { {"aaa1", "bbb1", "ccc1"}, {"漢字2", "bbb2", "ccc2"}, {"aaa3", "漢字3", "ccc3"}, {"aaa4", "bbb4", "漢字4"}, }; /** 列の桁数 */ private int[] length = {10, 20, 30}; /** ファイルオフセット */ private int offset = 0; private static final String FILE_PATH = "singleFile.dat"; public static void main(String[] args) { SingleFille sfile = new SingleFille(); try { sfile.execute(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } public void execute() throws IOException { File file = new File(FILE_PATH); try { FileOutputStream stream = new FileOutputStream(file); bstream = new BufferedOutputStream(stream); for(int i = 0; i data.length; i++) { String[] line = data[i]; putFile(line); } } catch (IOException e) { throw e; } finally { if(bstream != null) { try { bstream.close(); } catch (IOException e) { throw e; } } } } /** * @param line * @throws IOException */ private void putFile(String[] line) throws IOException { for(int i = 0; i line.length; i++) { //各列を桁数になるように整形 byte[] term = createTerm(line[i], i); bstream.write(term); offset += term.length; } } /** * @param term * @param index * @return * @throws UnsupportedEncodingException */ private byte[] createTerm(String term, int index) throws UnsupportedEncodingException { //項目を格納するバイト byte[] outterm = new byte[length[index]]; //項目をShift_JISのバイトに変換 byte[] interm = term.getBytes("SJIS"); for(int i = 0; i outterm.length; i++) { if( i interm.length) { outterm[i] = interm[i]; } else { //残りはスペース outterm[i] = 0x20; } } return outterm; } }
https://w.atwiki.jp/d2x2ch/pages/95.html
Battle Command 日本名:バトル・コマンド 略称:BC 効果 必要レベル 30 必要スキル Howl, Shout, Battle Orders 周囲の味方の全スキルレベルを、一定時間1ポイントブーストさせる。 Level 1 2 3 4 5 6 7 8 9 10 Mana Cost 11 Duration (seconds) 15 25 35 45 55 65 75 85 95 105 Level 11 12 13 14 15 16 17 18 19 20 Mana Cost 11 Duration (seconds) 115 125 135 145 155 165 175 185 195 205 Bonusを受けるスキル Shout +5 Seconds Per Level (Synergy Bonus) Battle Orders +5 Seconds Per Level (Synergy Bonus) Bonusを与えるスキル Shout +5 Seconds Per Level (Synergy Bonus) Battle Orders +5 Seconds Per Level (Synergy Bonus) 評価 Shout、Battle Ordersを唱える直前に使う、いわば枕のようなスキルである。 スキルに何pt入れようともブースト幅が上昇するわけではなく、前述の両スキルに対し有効時間延長のボーナスが与えられるのみ。 またほとんどの馬場がMax運用するBattle Ordersや、人気スキルShoutからのボーナスで十分な有効時間を確保できるため、スキルポイントによほどの余裕がない限りは1ptで運用するのが普通。 使い方 Shout、Battle Ordersを使う直前に一吠え。(二吠え?) Battle Command2回で1セット。Battle Command自身のレベル上昇を忘れずに。 大抵の場合、三者の効果時間は Battle Orders Shout Battle Command となっているはずなので、 Battle Command - Battle Orders - Shout - Battle Command の順に吠えるのがベストか。 スキル振り 1+ブーストで十分。 2PC環境下で、人間CTAと割り切るなら20(MAX)振るのもアリ。 その他 http //www.battle.net/diablo2exp/skills/barbarian-warcries.shtml#battlecommand 名前 コメント
https://w.atwiki.jp/limixp/pages/14.html
Javaプラットフォームのエディションについて整理します. Java SE (バージョン 6.0 以降)Java Platform, Standard Edition. (バージョン 5 以前)Java 2 Platform, Standard Edition.俗にいうJ2SE. デスクトップマシン用. Java EE (バージョン 5.0 以降)Java Platform, Enterprise Edition. (バージョン 4 以前)Java 2 Platform, Enterprise Edition. 俗にいうJ2EE. Webサーバ用. Servlet, JSP, EJB, JNDI, JTAなどの機能を提供. Java ME Java Platform, Micro Edition. 携帯電話, PDA, テレビ用. バージョンの表記について Javaのバージョンを1.4.0や1.5.0と表記する場合と,4.0や5.0と表記する場合があります. 1.4.0というような表記は開発バージョンのことを指し,4.0という表記は製品バージョンのことを指しています.1.4.0と4.0は表記の方法が違うだけで全く同じバージョンを指していると思って良いと思います. トップページ
https://w.atwiki.jp/hellgate_london/pages/61.html
Chat Command List /accept パーティ勧誘を承諾する /bug バグレポートを送る /channels すべてのチャットチャンネルを表示 /channeljoin [channel] [channel名]に入る /channelleave [channel] [channel名]にを終える /chat サーバーのデフォルトチャンネルで話す /disband パーティを解散する /fps ゲームのfps値を表示する /ignore [name] プレイヤーを遮断する /invite [name] パーティに勧誘する(同じエリアに居ない人でも可能) /kick [name] パーティから追い出す /l [text] ローカルゾーンチャット(同じ町の中のみ) /leave パーティから抜ける /lfg [text] PTメンバー募集チャット /newbie [text] 一般チャットコマンド /p [text] パーティチャット /ping そのサーバへの自分のping rateを表示する /played そのキャラクターでどれぐらいプレイしているかを表示する /r [text] 最後にwisperしてきた人に返答する。/replyでも可 /quit ゲームを終了してデスクトップにもどる /s text chat-1 chat-2 チャンネルで発言する /stuck スタックして動けなくなったときに使う。そのMapのスタート地点にもどる /t [name] [text] wisperチャット(名前のわかっている相手との1vs1で会話)を行う /wと同じ /town [text] ローカルゾーンチャット(同じ町の中のみ) /trade [text] トレードチャットl /unignore [name] プレイヤーを遮断リストから外す /w [name] [text] whisperチャット(名前のわかっている相手との1vs1で会話)を行う /whisperでも可 /who 現在のそのサーバーの人数